1. Field of the Invention
The present invention pertains to searches within the Internet. More particularly, this invention relates to an improved search mechanism for searching services (e.g., electronic services) on the Internet.
2. Description of the Related Art
As is known, searching for information, such as computer files or MP3 music files, on the Internet is traditionally done in a centralized fashion. This means that the provider of a file registers the file at some central database. All search requests for the file are directed to the central database. However, as the number of files and the number of file providers increase, the disadvantages of the centralized searching mechanism becomes more and more obvious. For example, as the central database grows, the response time to a search request increases accordingly. Another disadvantage is that it is typically difficult to scale the database when there is a large number of files and/or file providers. Additionally, it is typically difficult for a centralized database to keep track of all the files and their updates. Efforts are also needed for file providers to register their files at the central database.
Prior art solutions have been made to decentralize the file searching mechanism. FIG. 1 schematically illustrates one such prior art scheme. As can be seen from FIG. 1, the search network 10 is a decentralized one that includes a number of search nodes 11–13, each having a local file repository (i.e., 11a, 12a, or 13a). Each file repository stores files registered with the corresponding search node. Each of the nodes 11–13 performs two basic functions. One is to check its local file repository in accordance with a search query message received. The other is to forward query messages to other search nodes. In other words, the network 10 propagates search queries for files among a number of search nodes with each node responding to the queries for files that it has stored locally at its local file repository. New search nodes can be joined into the network 10 at any time, making their files available to all other nodes while also helping to propagate search queries.
As the Internet advances, the electronic services (i.e., E-services) technology has also evolved into a run-time composition of Internet-connected services from object-based or component-based software. This means that the E-services offered today are modular, nimble, electronic services available via the Internet that work together to perform a task, solve a problem, or complete a transaction. In order to work together, E-services must first be able to discover one another's presence on the Internet, and obtain the information needed to successfully invoke one another. Thus, composition of E-services typically requires methods for describing services, methods for creating repositories of service instances, and the ability of querying those repositories for the service instances. This means that a search mechanism is needed to allow discovery of E-services.
One prior art approach of searching or discovering E-services on the Internet is the centralized approach similar to the one described above. This means that a centralized database is required to register and store descriptions of all the E-services provided. However, this centralized database is difficult to scale when there is a large number of E-services and/or service providers. In addition, the centralized database is typically not capable of keeping up with the dynamic nature of E-service providers. If an E-service is no longer offered while it is still registered with the central database, the service will be found but cannot not be used. A service provider must register its service at the central database so that the service can be discovered. Just as a centralized web search engine is unable to keep track of all web pages available and unavailable at any given moment, so too are the centralized E-service repositories unable to keep up with the large set of services and their providers at any given time. Moreover, if the central database is not operating, then no search can be conducted.
On the other hand, the prior art decentralized file search network 10 shown in FIG. 1 cannot be applied to search E-services. This is due to the fact that the network 10 is only limited to file searches (e.g., music files or computer files). This is due to the fact that a file search query message contains insufficient information to search for a service. The query message only contains the name information of a file. To search for a particular service, a description of the service must be provided in the query message.
In addition, each of the nodes 11–13 of the network 10 can only process and propagate query messages for files, not services. This restriction is typically caused by the fact that each of the nodes is structured to apply only to a specific domain (e.g., music files or computer files).